home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 7
/
FM Towns Free Software Collection 7.iso
/
data
/
nyan_e2
/
nyane2_v.ext
< prev
next >
Wrap
Text File
|
1993-11-30
|
25KB
|
1,075 lines
/********** 受信ログを閲覧する ~外部コマンド使用版~ v1.04a用 **********/
%ok{[MES]
select({ }|MES,5,,{ OK?})
};
%note{[MES]
footnote({ 処理する}|MES|{のログファイルを選んでください});
};
%DeleteMemo{
loop({
case(@mlast>4,
{Yes},{ case(@mcheck,0,{mopen(@mlast,0,21,80,62)});
mclose(3);
im({Yes});
},{No},{im({No});
});
});
mclear(2); mclear(3); mclear(4);
};
%mcopy{[ORI,NEW]
var now[5];
now:=0;
%max @nolmemo(ORI);
loop({
madd(NEW,@memo(ORI,now+1,memomax));
case(now+memomax<max,
{Yes},{ now:=now+memomax;
im({Yes});
},{No},{im({No});
});
});
};
%mmove{[ORI,First,End,NEW]
var now[5];
now:=First-1;
loop({
case(now+memomax<End,
{Yes},{ madd(NEW,@memo(ORI,now+1,memomax));
now:=now+memomax;
im({Yes});
},{No},{madd(NEW,@memo(ORI,now+1,End-now));
im({No});
});
});
};
%boadmenu{[fname,type,ForumN,First,Count]
var linenum[8];
var memnum[6];
var TREE[4];
%resTitle{[title]
var org[80];
var num[3];
org:=title;
num:=0;
loop({
%after @getchar(org,4,80);
case(@getchar(org,1,3),
{Re:}, { num:=num+1; org:=after; im({Yes});
},{re:},{ num:=num+1; org:=after; im({Yes});
},{RE:},{ num:=num+1; org:=after; im({Yes});
},{Re*},{ num:=num+@head(after,{:});
org:=@body(after,{:}); im({Yes});
}, ,{
case(num==0,
{Yes},{ org:={Re:}|org;
}, ,{ org:={Re*}|(num+1)|{:}|org;
});
im({No});
});
});
im(org);
};
%SetTitle{
var idp[2];
var tip[2];
%Line @memo(2,linenum,1);
%HeadLine{[ATTR]
var st[2];
var en[2];
case(ATTR,
{NUM},{
st:=1;
case(type,
{Forum},{case(MesType,{OLD},{en:=3},{NEW},{en:=5});
},{Patio},{en:={5};
});
},{TITLE},{
en:=80;
case(type,
{Forum},{case(MesType,{OLD},{st:=39},{NEW},{st:=40});
},{Patio},{st:=40;
});
});
im(@getchar(@memo(4,1,1),st,en));
};
case(type,{Forum},{
case(@getchar(@memo(4,1,1),4,1)={/},
{Yes},{ MesType:={OLD};
},{No},{MesType:={NEW};
});
});
case(type,
{Forum},{
IndexLine:={Forum:}
|@getchar(ForumN|{ },1,8)|{/}|num|{/};
case(MesType,{OLD},{IndexLine:=IndexLine|{00}});
IndexLine:=IndexLine|@HeadLine({NUM});
Wtitle:=@HeadLine({TITLE})
},{BUL},{
IndexLine:={Forum:}|@getchar(ForumN|{ },1,8)
|{/ /BUL };
Wtitle:=@getchar(Line,34,80);
},{HP},{
IndexLine:={HP :}|@getchar(ForumN|{ },1,8)
|{ };
Wtitle:=@getchar(Line,39,80);
%WTITLE @getchar(@body(Wtitle,{:}),1,2);
case(WTITLE={Re} || WTITLE={re} || WTITLE={RE},{Yes},{
Wtitle:=@body(Wtitle,{:});
});
},{Patio},{
IndexLine:={Patio:}|@getchar(ForumN|{ },1,8)|
{/ /}|@HeadLine({NUM});
Wtitle:=@HeadLine({TITLE});
},{Mail},{
case(@getchar(Line,24,4)<>{ PC>},
{Yes},{ IndexLine:={Mail :}|@getchar(Line,27,8)
|{ };
},{No},{IndexLine:={PCVAN:}|@getchar(@memo(4,1,1),24,8)
|{ };
});
Wtitle:=@getchar(Line,42,80);
});
case(kind,{Yes},{
%TL @memo(4,1,1);
case(type,
{Forum},{case(MesType,{OLD},{idp:={11}; tip:={39}},
{NEW},{idp:={13}; tip:={40}})
},{BUL},{idp:={7}; tip:={31};
},{HP},{idp:={24}; tip:={38};
},{Patio},{idp:={13}; tip:={40};
},{Prof},{idp:={24}; tip:={24};
});
IndexLine:={Mail :}|@getchar(TL,idp,8)|{ };
Wtitle:=@getchar(TL,tip,80);
});
Wtitle:=@resTitle(Wtitle);
case(type={HP},{Yes},{
%tardata @head(ForumN,{ });
case(@SelHandle<>{},{Yes},{
Wtitle:=@head(Wtitle,{\n});
case( InsHan,
{HEAD},{Wtitle:=@SelHandle|{:}|Wtitle},
{TAIL},{Wtitle:=Wtitle|{<}|@SelHandle}
);
});
});
Wtitle:=@head(Wtitle,{\n});
Wtitle2:=Wtitle;
loop({
Wtitle2:=@input({ 題名を入れてください},,Wtitle2);
case(@nochar(Wtitle2)>40,{Yes},{
footnote({題名は, 全角20文字までです});
im({Yes})
},,{im({No})
});
});
footnote({});
case(Wtitle2<>{},{Yes},{Wtitle:=Wtitle2});
case(@getchar(Wtitle,@nochar(Wtitle)-1,2),
{能},{ Wtitle:=Wtitle|{ }
});
Wtitle:=Wtitle|{\n};
im(Wtitle);
};
%responce{[action]
var IndexLine[82];
var Wtitle[82];
var Wtitle2[82];
var Edit[3];
case(type<>{Prof},{Yes},{
SetTitle;
OutAllMemo;
case( (type={Forum} || type={Patio}) && action={SAY},{Yes},{
IndexLine:=@getchar(IndexLine,1,18)|{ };
});
madd(5,{});
case(type={Mail},{Yes},{
%tardata @head(@getchar(IndexLine,7,8),{ });
case(@SelHandle<>{} && @body(Handle,,{/})<>{},{Yes},{
madd(5,{FROM:}|@SelHandle|{\n})});
});
RESPONCE;
});
};
%resp2{
var IndexLine[82];
var Wtitle[82];
var Wtitle2[82];
var Edit[3];
case(type<>{Mail},
{Yes},{ kind:={Yes};
SetTitle;
OutAllMemo;
madd(5,{});
%tardata @head(@getchar(IndexLine,7,8),{ });
case(@SelHandle<>{} && @body(Handle,,{/})<>{},{Yes},{
madd(5,{FROM:}|@SelHandle|{\n})});
RESPONCE;
},{No},{responce({SAY});
});
};
%delmsg{[MARK]
%DELMSG{
OutAllMemo;
mclear(wm);
mmove(2,1,linenum-1,wm);
madd(wm,@getchar(Line,1,8));
case(MARK,
{D},{ case(@post(linenum),
{保},{ madd(wm,{ });
},{削},{madd(wm,MARK);
});
},{C},{ case(@post2(linenum),
{保},{ madd(wm,{ });
},{切},{madd(wm,MARK);
});
});
madd(wm,@getchar(Line,10,80));
mmove(2,linenum+1,maxline+1,wm);
mclear(2);
mcopy(wm,2);
mclear(wm);
};
%maxline @nolmemo(2)-1;
%Line @memo(2,linenum,1);
case(linenum>1 && linenum<maxline,{Yes},{DELMSG});
OutAllMemo;
};
%copymsg{
OutAllMemo;
mclear(wm);
case(linenum!=1,{Yes},{
mmove(2,1,linenum-1,wm);
});
case(@copyset(linenum),
{保},{madd(wm,{ });
}, ,{madd(wm,{C});
});
madd(wm,@getchar(@memo(2,linenum,1),2,80));
mmove(2,linenum+1,@nolmemo(2),wm);
mclear(2);
mcopy(wm,2);
mclear(wm);
OutAllMemo;
};
%TrueHandle{
loop({
case(@getchar(Handle,@nochar(Handle),1)={ },
{Yes},{ Handle:=@body(Handle,,{ }); im({Yes});
},{No},{
case(@getchar(Handle,@nochar(Handle)-1,2)={ },
{Yes},{ Handle:=@body(Handle,,{ }); im({Yes});
},{No},{im({No});
});
});
});
};
%SetProf{
var IndexLine[82];
var ID[8];
var Handle[30];
var idp[2];
var tip[2];
%TL @memo(4,1,1);
case(type,
{Forum},{case(MesType,{OLD},{idp:={11}; tip:={21}},
{NEW},{idp:={13}; tip:={23}})
},{BUL},{idp:={7}; tip:={};
},{HP},{idp:={24}; tip:={};
},{Patio},{idp:={13}; tip:={23};
},{Mail},{idp:={23}; tip:={5};
},{Prof},{idp:={24}; tip:={1};
});
ID:=@getchar(TL,idp,8);
case(tip<>{},
{Yes},{ Handle:=@getchar(TL,tip,16);
},{No},{Handle:=ID;
});
TrueHandle;
OutAllMemo;
case(Handle=ID,{Yes},{
Handle:=@input({ ハンドル名を入力してください},,ID);
});
case(Handle={},{Yes},{Handle:=ID});
case(@YesNo({ 「}|Handle|{」 氏のプロフィールを}|
{受信予約しますか?}),{Yes},{
IndexLine:={予 Prof :}|ID|{ :}|Handle|{\n};
write(logd|{\UP\INDEX.TXT},IndexLine);
});
};
%PlusHandle{
OutAllMemo;
mset(4,{n});
case(len>0,
{Yes},{
case(@mcheck!=0,{Yes},{ mclose(2) });
mclear(4);
mread(fname,4,st,len);
%line @memo(4,1,1);
case(type,
{Forum},{case(MesType,
{OLD},{pick:=@getchar(line,11,8);
flag:={FO}
},{NEW},{pick:=@getchar(line,13,8);
flag:={FN}
});
},{Mail},{case(@getchar(line,20,4)<>{PCV>},
{Yes},{pick:=@getchar(line,23,8); flag:={MA}
},{No},{pick:=@getchar(line,24,8); flag:={PC}
});
});
case(@body(@memo(3),pick)={},{Yes},{
case(flag,
{FO},{madd(3,@getchar(line,11,28)|{\n});
},{FN},{madd(3,@getchar(line,13,26)|{ \n});
},{MA},{madd(3,pick|{ }|
@getchar(line,5,16)|{ \n});
},{PC},{madd(3,pick|{ (VAN)\n});
});
});
});
linenum:=lno;
im(len<=0 && EOFproc<>{NEXT});
};
%refer{
var lno[4];
%work @mlast+1;
CloseAllMemo;
loop({
mopen(2,0,21,639,459,{w});
footnote({終了表示},{b});
loop({
waitx(1000);
im(@xtype!=2 && @xtype<100 || @xlinenum<0)
});
case(@PFK(@xtype)=2 || @PFK(@xtype)=102,
{Yes},{
footnote({終了},{b});
lno:=@xlinenum;
case(@mcheck,2,{mclose(2)});
case(TREE,
{Yes},{
%max @nolmemo(2)-1;
case(lno,1,{lno:=2});
%LineData @read(DataDat,lno,1);
%st @getchar(LineData,1,8);
%len @getchar(LineData,10,8)-st;
mread(fname,work,st,len);
},{No},{
%max @nolmemo(2)-1;
case(lno,1,{lno:=2},max,{lno:=max-1});
%st @getchar(@memo(2,lno,1),1,8);
%len @getchar(@memo(2,lno+1,1),1,8)-st;
mread(fname,work,st,len);
});
mopen(work,0,21,639,459,{r});
loop({waitx(9999); im(@PFK(@xtype)!=101)});
check(work);
mclose(3);
im({Yes});
},{No},{im({No});
});
});
check(2);
mclose(2);
};
%loadmsg{[sign]
var lno[4];
var pick[10];
var adddata[30];
var flag[3];
%max @nolmemo(2)-1;
case(sign,
{+},{lno:=linenum+1},
{-},{lno:=linenum-1},
{=},{lno:=linenum});
case(linenum=1,{Yes},{lno:=2});
case(lno<=1,
{Yes},{ lno:=linenum;
Bell;
select({これ以前の発言はありません},1);
});
case(lno>=max,
{Yes},{ lno:=max-1;
Bell;
select({これ以降の発言はありません},1);
});
%st @getchar(@memo(2,lno,1),1,8);
%len @getchar(@memo(2,lno+1,1),1,8)-st;
PlusHandle;
};
%loadmsg2{[sign]
var lno[4];
var pick[10];
var adddata[30];
var flag[3];
%max @nolmemo(2)-1;
case(sign,
{+},{lno:=linenum+1},
{-},{lno:=linenum-1},
{=},{lno:=linenum});
case(linenum=1,{Yes},{lno:=2});
case(lno<=1,{Yes},{
lno:=linenum;
Bell;
select({これ以前の発言はありません},1);
});
case(lno>max,{Yes},{
lno:=max;
Bell;
select({これ以降の発言はありません},1);
});
%LineData @read(DataDat,lno,1);
%st @getchar(LineData,1,8);
%len @getchar(LineData,10,8)-st;
PlusHandle;
};
%dispone{
var cont[4];
var kind[4];
cont:={Yes};
madd(4,{});
case(@loadmsg({=}),{Yes},{
loop({loadmsg({+})});
});
loop({
kind:={};
%wm {5};
mclear(5);
mopen(4,0,21,639,459,{r});
footnote({終了 前 次 }|@post(linenum)|{次}
|@post2(linenum)|{次応答発言 参照MAILPROF},{b});
loop({ waitx(1000);
case(@mcheck<>4,{Yes},{mopen(4)});
im(@xtype<100);
});
case(@PFK(@xtype),
101,{EOFproc:={SEL}; cont:={No}},
102,{loop({loadmsg({-})})},
103,{loop({loadmsg({+})})},
104,{delmsg({D}); loadmsg({+})},
105,{delmsg({C}); loadmsg({+})},
106,{responce({RES})},
107,{responce({SAY})},
110,{refer},
111,{resp2},
112,{SetProf},
,OutAllMemo);
case(@mcheck!=0 && @mlast>4,{Yes},{mclose(3)});
CloseAllMemo;
im(cont)
});
mset(4,{n});
};
%dispone2{
%copyset2{[ptr]
case(@getchar(@memo(2,ptr,1),1,1),
{C},{im({保});
},,{ im({切});
});
};
var cont[4];
var kind[4];
cont:={Yes};
madd(4,{});
case(@loadmsg2({=}),{Yes},{
loop({loadmsg2({+})});
});
loop({
kind:={};
%wm {5};
mclear(5);
mopen(4,0,21,639,459,{r});
footnote({終了 前 次 }|@copyset2(linenum)|{次}
|{応答発言 参照MAILPROF},{b});
loop({ waitx(1000);
case(@mcheck<>4,{Yes},{mopen(4)});
im(@xtype<100);
});
case(@PFK(@xtype),
101,{EOFproc:={SEL}; cont:={No}},
102,{loop({loadmsg2({-})})},
103,{loop({loadmsg2({+})})},
105,{copymsg; loadmsg2({+})},
106,{responce({RES})},
107,{responce({SAY})},
110,{refer},
111,{resp2},
112,{SetProf},
,OutAllMemo);
case(@mcheck!=0 && @mlast>4,{Yes},{mclose(3)});
CloseAllMemo;
im(cont)
});
mset(4,{n});
};
%SetTree{
mclear(2);
case(TREE,
{Yes},{
mread(MesDat,2);
TREE:={No};
},{No},{
dispoff({Yes});
case(@filechk(TreeDat),{No},{
%nowdir @getcdir2;
setcdir2(current);
command({MESTREE }|MesDat|{ }|TreeDat|{ }|DataDat
|{ }|tmpdir|{\});
setcdir2(nowdir);
});
mread(TreeDat,2);
TREE:={Yes};
dispoff({No});
});
};
%copyset{[ptr]
case(@getchar(@memo(2,ptr,1),1,1),
{C},{ im({保});
}, ,{ case(@getchar(@memo(2,ptr,1),2,2),
{│},{ im({子});
},{ },{im({子});
},,{ im({切});
});
});
};
%post{[ptr]
case(@getchar(@memo(2,ptr,1),9,1),
{D},{ im({保});
}, ,{ im({削});
});
};
%post2{[ptr]
case(@getchar(@memo(2,ptr,1),9,1),
{C},{ im({保});
}, ,{ im({切});
});
};
%del{
delfile(MesDat);
delfile(TreeDat);
delfile(DataDat);
};
%MesDat tmpdir|{\_TMP.DAT};
%TreeDat tmpdir|{\_TREE.DAT};
%DataDat tmpdir|{\_DATA.DAT};
mclear(2);
HEADER;
TREE:={No};
case(@nolmemo(2)!=3,
{Yes},{
loop({
%wm {4};
var Note[80];
mopen(2,0,21,639,459,{w});
curline(linenum);
case(type={Forum} || type={Patio},
{Yes},{
case(TREE,
{Yes},{ Note:={終了 表示 切保 切出ノーマル 全除};
},{No},{Note:={終了 表示削保切保除去切出ツリー 全除};
});
},{No},{ Note:={終了 表示削保切保除去切出 全除};
});
footnote(Note,{b});
loop({waitx(1000);
im(@xtype!=2 && @xtype<100 || @xlinenum<0)
});
linenum := @xlinenum;
case(@PFK(@xtype),
2,{ CloseAllMemo;
case(TREE,{Yes},{dispone2},{No},{dispone});
im({Yes});
},101,{ im({No});
},102,{ CloseAllMemo;
EXTERNAL({},{});
im({Yes});
},103,{ CloseAllMemo;
case(TREE,{Yes},{dispone2},{No},{dispone});
im({Yes});
},104,{ %maxline @nolmemo(2)-1;
case(linenum>1 && linenum<maxline && TREE={No},
{Yes},{ delmsg({D});
linenum:=linenum+1;
case(linenum>=maxline,{Yes},{
linenum:=maxline;
});
},{No},{OutAllMemo;
});
im({Yes});
},105,{ %maxline @nolmemo(2)-1;
case(TREE,
{Yes},{ copymsg;
},{No},{delmsg({C});
});
linenum:=linenum+1;
case(linenum>=maxline,{Yes},{
linenum:=maxline;
});
im({Yes});
},106,{ case(TREE,
{Yes},{ OutAllMemo;
im({Yes});
},{No},{%key {PF6};
EXPIRE;
im(@filechk(fname));
});
},107,{ %key {PF7};
EXPIRE;
},108,{ OutAllMemo;
case(type={Forum} || type={Patio},{Yes},SetTree);
im({Yes});
},110,{ CloseAllMemo;
case(@rmlog(fname),
{Yes}, {im({No});
},{No},{im({Yes});
});
}, ,{ OutAllMemo;
im({Yes});
});
});
},{No},{
footnote({});
ok({ログファイルに発言が記録されていません});
});
CloseAllMemo;
%member @body(fname,,{\})|{\MEMBER.TXT};
case(@memo(3)<>{} && @nolmemo(3)>memnum,{Yes},{mwrite(member,3)});
DeleteMemo;
mset(2,{n});
del;
};
%delmark{[fname]
case(@filechk(fname),
{No},{
mclear(2);
%line @memo(1,boadnum,1);
mmove(1,1,boadnum-1,2);
madd(2,{ }|@getchar(line,2,80));
mmove(1,boadnum+1,@nolmemo(1),2);
mclear(1);
mcopy(2,1);
});
};
%rmlog{[fname]
select({ 受信ログファイル「}|fname|{」を削除します},9999,{im({No});
},{ O K },{
delfile(fname);
delmark(fname);
im({Yes});
},{ N G },{
im({No});
});
};
%dispFile{[filename]
case(@filechk(logd|{\}|filename),{Yes},{
mclear(2);
mread(logd|{\}|filename,2);
mopen(2,0,21,639,459,{w});
footnote({終了},{b});
loop({waitx(1000);
case(@xtype=2,{Yes},{
%tarline @memo(2,@xlinenum,1);
%tarnum @getchar(tarline,3,2);
case( @getchar(tarline,1,2)={ } &&
@getchar(tarline,5,2)={ },
{Yes},{
case(@YesNo({ }|tarnum|
{番のお知らせを受信します}),{Yes},{
write(logd|{\UP\INDEX.TXT},
{予 NEW : /}|tarnum|{/ :今週のお知らせ\n});
});
});
});
im(@xtype<100)
});
case(@mcheck!=0,{Yes},{mclose(3)});
mset(2,{n})
},{No},{
ok({受信済みのファイルがありません});
})
};
%delboad{
%line @memo(1,boadnum,1);
%type @getchar(line,11,14);
%name @head(@getchar(line,2,8),{ });
%delerr{
ok({ このファイルは消せません});
};
%Dir{[dir1,dir2]
rmlog(logd|dir1|name|dir2);
};
case(type,
{最新のNifty オ},{ delerr;
},{最新のNifty 課},{ delerr;
},{アクセス履歴情},{ delerr;
},{受信したメール},{ rmlog(logd|{\MAIL\MAIL.LOG});
},{HPの最新オープ},{ Dir({\HP\},{.TLT});
},{HPの内容 },{ Dir({\HP\},{.LOG});
},{HPの最近の参照},{ Dir({\HP\},{.USR});
},{Patio のオープ},{ Dir({\PATIO\},{.TLT});
},{Patio の最近の},{ Dir({\PATIO\},{.USR});
},{オープニングメ},{ Dir({\},{\TITLE.LOG});
},{掲示板の内容 },{ Dir({\},{\BUL.LOG});
},{会議室オープニ},{ delerr;
},,{
case(@getchar(type,3,7),
{会議室 },{
%num @case(@getchar(line,11,1),
{ },{im({0}|@getchar(line,12,1))},
,{getchar(line,11,2)}
);
Dir({\},{\}|{MES}|num|{.LOG});
},{tio },{
Dir({\PATIO\},{.LOG});
});
});
};
%dispboad{
%line @memo(1,boadnum,1);
%type @getchar(line,11,14);
%name @head(@getchar(line,2,8),{ });
chg:={};
case(type,
{最新のNifty オ},{dispFile({TITLE.LOG})},
{最新のNifty 課},{dispFile({BILL.LOG})},
{アクセス履歴情},{dispFile({ACCOUNT.TXT})},
{受信したメール},{
%filename logd|{\MAIL\MAIL.LOG};
case(@filechk(filename),
{Yes},{boadmenu(filename,{Mail},name,{1},{0});
},{No},{ok({受信済のメールがありません})
})},
{受信したプロフ},{
%filename logd|{\MAIL\PROFILE.LOG};
case(@filechk(filename),
{Yes},{boadmenu(filename,{Prof},name,{1},{0});
},{No},{ok({受信したプロフィールはありません})
})},
{HPの最新オープ},{dispFile({HP\}|name|{.TLT})},
{HPの内容 },{
%filename logd|{\HP\}|name|{.LOG};
case(@filechk(filename),
{Yes},{boadmenu(filename,{HP},name,{1},{0});
},{No},{ok({このHPには受信済のメッセージがありません})
})},
{Patio のオープ},{dispFile({PATIO\}|name|{.TLT})},
{HPの最近の参照},{dispFile({HP\}|name|{.USR})},
{Patio の最近の},{dispFile({PATIO\}|name|{.USR})},
{オープニングメ},{dispFile(name|{\TITLE.LOG})},
{掲示板の内容 },{
%filename logd|{\}|name|{\BUL.LOG};
case(@filechk(filename),
{Yes},{boadmenu(filename,{BUL},name,{1},{0});
},{No},{ok({受信済の掲示板メッセージがありません})
})},
{会議室オープニ},{dispFile(name|{\MESTITLE.LOG})},
,{
case(@getchar(type,3,7),
{会議室 },{
%num @case(@getchar(line,11,1),
{ },{im({0}|@getchar(line,12,1))},
,{getchar(line,11,2)}
);
%filename logd|{\}|name|{\}|{MES}|num|{.LOG};
UnReadL:=@getchar(@memo(1,boadnum),26,3);
case(@filechk(filename),
{Yes},{ boadmenu(filename,{Forum},name,{1},{0});
},{No},{ok({この会議室には,受信済のメッセージがありません})
});
},{tio },{
%filename logd|{\PATIO\}|name|{.LOG};
UnReadL:=@getchar(@memo(1,boadnum),26,3);
case(@filechk(filename),
{Yes},{boadmenu(filename,{Patio},name,{1},{0});
},{No},{ok({このPatioには受信済のメッセージがありません})
})
});
});
case(chg,{Yes},{ChkDrv(current,mr)});
};
%alldisp{
%Disp{[filename]
case(@filechk(logd|{\}|filename),
{Yes},{ mclear(2);
mread(logd|{\}|filename,2);
footnote({終了},{b});
mopen(2,0,21,639,459,{w});
loop({waitx(9999); im(@PFK(@xtype)!=101)});
check(2);
mclose(3);
},{No},{ok({受信済のログファイルがありません});
});
};
%line @memo(1,boadnum,1);
%type @getchar(line,11,14);
%name @head(@getchar(line,2,8),{ });
chg:={};
case(type,
{受信したメール},{Disp({MAIL\MAIL.LOG})},
{受信したプロフ},{Disp({MAIL\PROFILE.LOG})},
{HPの内容 },{Disp({HP\}|name|{.LOG})},
{掲示板の内容 },{Disp(name|{\BUL.LOG})},
,{
case(@getchar(type,3,7),
{会議室 },{
%num @case(@getchar(line,11,1),
{ },{im({0}|@getchar(line,12,1))},
,{getchar(line,11,2)}
);
Disp(name|{\}|{MES}|num|{.LOG});
},{tio },{ Disp({PATIO\}|name|{.LOG});
});
});
case(chg,{Yes},{ChkDrv(current,mr)});
};
%DispMail{[fn]
var filename[80];
case(@ChkDrv(logm1,mm),{Yes},{
chg:={Y};
note({メール});
setcdir2(logm1);
case(fn={},
{Yes},{ %file @filesel;
filename:=@getcdir2|{\}|file;
},{No},{filename:=fn;
});
case(@filechk(filename),
{Yes},{boadmenu(filename,{Mail},name,{1},{0});
},{No},{ok({保存メールがありません});
})
});
};
%setcnt{
select({ 処理を指定してください},9999,{first:={};
},{ 全発言表示 },{first:=1;
},{ 開始発言指定 },{
%f @input({ 表示開始番号を指定してください});
first:=@getchar(f,1,5);
%c @input({ 表示数を指定してください});
cnt:=@getchar(c,1,5);
/* },{ 先頭部分表示 },{
first:=1;
cnt:=10;*/
},{ 処理中止 },{first:={};
});
case(cnt={},{Yes},{cnt:=0});
};
%DispHP{[fn,Type,Type2,mes]
var filename[80];
%DHP{
case(@filechk(filename),
{Yes},{ var first[5];
var cnt[3];
setcnt;
case(first<>{},
{Yes},{ boadmenu(filename,Type2,name,first,cnt);
});
},{No},{ ok({保存}|mes|{ログがありません});
})
};
case(@ChkDrv(logh1,mh),{Yes},{
chg:={Y};
setcdir2(logh1);
case(fn={},
{Yes},{ note(mes);
filename:=@filesel;
%name @head(filename,{.});
filename:=@getcdir2|{\}|filename;
DHP;
},{No},{filename:=fn;
DHP;
});
});
};
%DispForum{[fn,type]
var filename[80];
%DForum{[type]
case(@filechk(filename),
{Yes},{
case(type,
{Forum},{
var first[5];
var cnt[3];
setcnt;
case(first<>{},{Yes},{
boadmenu(filename,type,name,first,cnt);
});
},,{
boadmenu(filename,type,name,{1},{0});
});
},{No},{ ok({保存会議室がありません});
});
};
%DispMes{[type]
case(@ChkDrv(logc1,mc),{Yes},{
chg:={Y};
case(fn={},
{Yes}, {note({フォーラム});
setcdir2(logc1);
filename:=@filesel;
%name @tail(@getcdir2,{\});
%num @getchar(filename,4,2);
filename:=@getcdir2|{\}|filename;
DForum(type);
},{No},{filename:=fn;
DForum(type);
});
});
};
%DispBul{[type]
case(@ChkDrv(logb1,mb),{Yes},{
chg:={Y};
case(fn={},
{Yes}, {note({掲示板});
setcdir2(logc1);
filename:=@filesel;
%name @tail(@getcdir2,{\});
filename:=@getcdir2|{\}|filename;
DForum(type);
},{No},{filename:=fn;
DForum(type);
});
});
};
case(type,
{Forum},{ DispMes(type);
},{BUL},{ DispBul(type);
});
};
%selback{
var name[10];
%type @select({ 参照するバックアップログの種類は?},
9999,{im({})},
{ メール },{im({Mail})},
{ HP },{im({HP})},
{パティオ},{im({Patio})},
{ 会議室 },{im({Forum})},
{ 掲示板 },{im({BUL})});
chg:={};
case(type,
{Mail}, {DispMail({});
},{HP}, {DispHP({},hp,{HP},{HP});
},{Patio}, {DispHP({},patio,{Patio},{パティオ});
},{Forum}, {DispForum({},{Forum});
},{BUL}, {DispForum({},{BUL});
});
case(chg,{Yes},{ChkDrv(current,mr)});
};
%dispback{
var name[10];
%line @memo(1,boadnum,1);
%type @getchar(line,11,14);
%name @head(@getchar(line,2,8),{ });
chg:={};
case(type,
{受信したメール},{
%filename logm1|{\MAIL}|mrgsuff;
DispMail(filename);
},{HPの内容 },{
%filename logh1|{\}|name|mrgsuff;
DispHP(filename,{hp},{HP},{HP});
},,{
case(@getchar(type,3,6),
{示板の},{
%filename logb1|{\}|name|logb2|{\BUL}|mrgsuff;
DispForum(filename,{BUL});
},
{会議室},{
%num @case(@getchar(line,11,1),
{ },{im({0}|@getchar(line,12,1))},
,{getchar(line,11,2)}
);
%filename logc1|{\}|name|logc2|{\MES}|num|mrgsuff;
DispForum(filename,{Forum});
},
{tio },{
%filename logh1|{\}|name|mrgsuff;
DispHP(filename,{patio},{Patio},{パティオ});
});
});
case(chg,{Yes},{ChkDrv(current,mr)});
};
var boadnum[10];
var UnReadL[4];
var func[4];
var EOFproc[4];
EOFproc:={SEL};
footnote({ 受信文書の一覧を作成中です});
Treq:={VIEW};
TITLE;
boadnum:=0;
loop({
case(EOFproc,
{SEL},{
mopen(1,0,21,639,459,{r});
curline(boadnum);
footnote({終了 表示 保呼ファイル 全除},{b});
loop({
waitx(1000);
im(@xtype!=1 && @xtype<100 || @xlinenum<0)
});
boadnum :=@xlinenum;
func :=@PFK(@xtype);
},{NEXT},{
boadnum :=boadnum+1;
func :=103;
});
case(func,
1,{ CloseAllMemo;
dispboad;
},101,{
},104,{ CloseAllMemo;
dispboad;
},105,{ CloseAllMemo;
alldisp;
},106,{ CloseAllMemo;
dispback;
},107,{ CloseAllMemo;
selback;
},110,{ CloseAllMemo;
delboad;
}, ,{ OutAllMemo;
});
im(func<>101)
});
footnote({});
allclear;